home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / pc / DD3BETA1.ZIP / PACK1.PRG / TMP / DD3STR.PAS < prev    next >
Encoding:
Pascal/Delphi Source File  |  1997-01-04  |  1.7 KB  |  103 lines

  1. Unit dd3str;
  2. {SRCOMMP Package}
  3.  
  4. Interface
  5.  
  6.     Function Int_To_Str(L : LongInt) : String;
  7.     Function Str_To_Int(S : String) : LongInt;
  8.     Function Upper(S : String) : String;
  9.     Function AddCommas( I : LongInt) : String;
  10.     Function Capitalize(S : String) : String;
  11.     Function PadRight(S : String; L : Integer; Fill : Char) : String;
  12.     Function PadLeft(S : String; L : Integer; Fill : Char) : String;
  13.  
  14. Implementation
  15.  
  16. Function Capitalize;
  17. Var
  18.     X : Integer;
  19. Begin
  20.     For X := 1 to Length(S) Do
  21.         If S[X] IN ['A'..'Z'] then S[X] := Chr(Ord(S[X])+32);
  22.     S[1] := Upcase(S[1]);
  23.     For X := 2 to Length(S) do
  24.         If Not (S[X-1] IN ['a'..'z','A'..'Z']) then S[X] := Upcase(S[X]);
  25.     Capitalize := S;
  26. End;
  27.  
  28. Function Int_To_Str;
  29. Var
  30.     S : String;
  31. Begin
  32.     Str(L,S);
  33.     Int_To_Str := S;
  34. End;
  35.  
  36. Function Str_To_Int;
  37. Var
  38.     Code : Integer;
  39.     I : LongInt;
  40. Begin
  41.     Val(S,I, Code);
  42.     If Code = 0 then Str_To_Int := I else Str_To_Int := -1;
  43. End;
  44.  
  45. Function Upper;
  46. Var
  47.     L : LongInt;
  48. Begin
  49.     For L := 1 to Length(S) Do
  50.         S[L] := Upcase(S[L]);
  51.     Upper := S;
  52. End;
  53.  
  54. Function AddCommas;
  55. Var
  56.     S,S1 : String;
  57.     Negative : Boolean;
  58.     X : LongInt;
  59. Begin
  60.     If I < 0 then
  61.     Begin
  62.         Negative := True;
  63.         I := Abs(I);
  64.     End
  65.     Else
  66.         Negative := False;
  67.     S := Int_To_Str(I);
  68.     If Length(S) > 4 Then
  69.     Begin
  70.         S1 := '';
  71.         X := 0;
  72.         While Length(S) > 0 do
  73.         Begin
  74.             If (X MOD 3 = 0) And (X <> 0) then
  75.                 S1 := ','+S1;
  76.             S1 := S[Length(S)] + S1;
  77.             Delete(S,Length(S),1);
  78.             Inc(X);
  79.         End;
  80.     End
  81.     Else
  82.         S1 := S;
  83.     If Negative then S1 := '-'+S1;
  84.     AddCommas := S1;
  85. End;
  86.  
  87. Function PadRight;
  88. Begin
  89.     While Length(S) < L Do
  90.         S := S + Fill;
  91.     PadRight := S;
  92. End;
  93.  
  94. Function PadLeft;
  95. Begin
  96.     While Length(S) < L Do
  97.         S := Fill + S;
  98.     PadLeft := S;
  99. End;
  100.  
  101. Begin
  102. End.
  103.